.. _cmlPmCfgGetInOutRatio: cmlPmCfgGetInOutRatio ================================ -------------------------------- SYNOPSYS ````````````` .. code-block:: none VT_I4 cmlPmCfgGetInOutRatio ([in] VT_I4 BoardID, [in] VT_I4 NodeId, [in] VT_I4 Channel, [out] VT_PR8 Ratio ) DESCRIPTION ````````````` - cmlPmCfgGetInOutRatio() 함수는 설정되어있는 Feedback펄스와 Command펄스의 분해능 비율 (Resolution ratio)을 반환합니다. \ - 이 함수의 사용과 호출에 있어, 제공된 ㈜커미조아의 함수 헤더 Visual Basic 에서는 함수의 첨두어 cml 가 붙지 않습니다. PARAMETER ````````````` ▶ BoardID : 사용자가 설정한 디바이스(보드) ID. ▶ NodeId : 사용자가 제어하고자 하는 노드 번호. ▶ Channel : 축 번호. 통합 축으로 관리되는 축 번호를 의미하며, 상수 값으로 0 (Zero Based) 이상, 최대 통합 축 개수 - 1 이하의 값을 축 번호로 설정할 수 있습니다. ▶ Ratio : Feedback펄스와 Command펄스의 분해능 비를 설정 혹은 반환합니다. 이 값은 아래와 같이 설정합니다. Ratio = (Feedback펄스 분해능)/(Command 펄스의 분해능) RETURN VALUE ````````````` .. csv-table:: :widths: 10 90 :header-rows: 1 :stub-columns: 0 Value, Meaning 음수, 수행 실패 0(ERR_NONE), 수행 성공 REFERENCE ``````````````` - In/Out Ratio는 Actual(Feedback) position 또는 Actual speed 를 논리 단위로 읽을 때 적용됩니다. 논리적 단위 거리나 단위 속도는 Command 펄스 기준으로 설정되므로 Command 펄스와 Feedback 펄스의 분해능이 서로 다르다면 Actual position이나 Actual speed의 논리값 계산이 잘못되게 됩니다. \ - In/Out Ratio 는 cmlPmStGetPosition() 함수와 cmlPmStGetSpeed() 함수에서 카운터를 cmlCNT_FEED 으로 설정한 경우에만 영향을 미칩니다. EXAMPLE ``````````````` .. code-block:: c++ :linenos: :emphasize-lines: 5 C/C++ #include “ComiMLink2_SDK.h” #include “ComiMLink2_SDK_Def.h” long nChannel = 0; long BoardID = 0; double fRatio = 2.0f; //0번 축을 선택합니다. //분해능 비율을 2로 설정합니다. /* 0번 축의 분해능 비율을 설정합니다. 분해능 비율은 Ratio = (Feedback 펄스 분해능)/(Command 펄스의 분해능) */ cmlPmCfgSetInOutRatio (BoardID, 0, nChannel, fRatio ); //0번 축의 현재 분해능 비율을 반환합니다. cmlPmCfgGetInOutRatio (BoardID, 0, nChannel, &fRatio );